<?php
/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

namespace TodoList;

use \DateTime;
use \TodoList\Model\Todo;
use \TodoList\Util\Utils;

//~ Template for list.php
// variables:
//  $title - page title
//  $status - status of TODOs to be displayed
//  $todos - TODOs to be displayed

?>

<h1>
    <?php echo Utils::iconStatus($status); ?>
    <?php echo $title; ?>
</h1>

<?php if (empty($todos)): ?>
    <p>No TODO items found.</p>
<?php else: ?>
    <ul class="list">
        <?php foreach ($todos as $todo): ?>
            <?php /* @var $todo Todo */ ?>
            <?php $tooLate = $status == Todo::STATUS_PENDING
                    && $todo->getDueOn() < new DateTime(); ?>
            <li>
                <h3>
                    <a href="<?php echo Utils::createLink('detail', ['id' => $todo->getId()]) ?>"><?php echo Utils::escape($todo->getTitle()); ?></a>
                    <?php echo Utils::iconPriority($todo->getPriority()); ?>
                    <?php if ($tooLate): ?>
                        <i class="material-icons error" title="Should be already done!">error</i>
                    <?php endif; ?>
                </h3>
                <?php if ($todo->getDescription()): ?>
                    <p class="description"><?php echo Utils::escape($todo->getDescription()); ?></p>
                <?php endif; ?>
                <p><span class="label">Created On:</span> <?php echo Utils::escape(Utils::formatDateTime($todo->getCreatedOn())); ?></p>
                <p><span class="label">Due On:</span>
                    <?php if ($tooLate): ?><span class="too-late"><?php endif; ?>
                    <?php echo Utils::escape(Utils::formatDateTime($todo->getDueOn())); ?>
                    <?php if ($tooLate): ?></span><?php endif; ?>
                </p>
            </li>
        <?php endforeach; ?>
    </ul>
<?php endif; ?>
